/**
 * 设备发放信息
 */
var pageCurr2;
$(function () {
    layui.use('table', function () {
        var table = layui.table
            , form = layui.form;

        tableIns = table.render({
            elem: '#deviceLog'
            , url: '/device/getDeviceLog'
            , method: 'post' //默认：get请求
            , cellMinWidth: 100
            , page: true,
            request: {
                pageName: 'page' //页码的参数名称，默认：page
                , limitName: 'limit' //每页数据量的参数名，默认：limit
            }, response: {
                statusName: 'code' //数据状态的字段名称，默认：code
                , statusCode: 200 //成功的状态码，默认：0
                , countName: 'totals' //数据总数的字段名称，默认：count
                , dataName: 'list' //数据列表的字段名称，默认：data
            }
            , cols: [[
                {type: 'numbers'}
                // , {field: 'id', title: '编号', width: 80, unresize: true, sort: true}
                , {field: 'deviceId', title: '设备编号'}
                , {field: 'deviceType', title: '设备类型', minWidth: 80}
                , {field: 'deviceAtt', title: '设备属性', minWidth: 80}
                , {field: 'userId', title: '用户编号'}
                , {field: 'userName', title: '用户姓名'}
                , {field: 'insertTime', title: '创建时间'}
                , {field: 'updateTime', title: '修改时间'}
                , {
                    fixed: 'right',
                    title: '操作',
                    width: 200,
                    align: 'center',
                    toolbar: '#optBar2'
                }
            ]]
            , done: function (res, curr, count) {
                //如果是异步请求数据方式，res即为你接口返回的信息。
                //如果是直接赋值的方式，res即为：{data: [], count: 99} data为当前页数据、count为数据总长度
                console.log(res);
                //得到当前页码
                console.log(curr);
                //得到数据总量
                console.log(count);
                var curr = eval('(' + curr + ')');
                pageCurr2 = curr;
            }
        });
        //监听“操作”
        table.on('tool(deviceLogTable)', function (obj) {
            var data = obj.data;

            if (obj.event === 'del') {
                delDeviceLog(data, data.id);
            } else if (obj.event === 'edit') {
                //编辑
                getDeviceAndUsers(data, data.id);
            }
        });
        //监听提交
        form.on('submit(devLogSubmit)', function (data) {
            // TODO 校验
            logFormSubmit(data);
            return false;
        });

    });
    //搜索框
    layui.use(['form', 'laydate'], function () {
        var form = layui.form, layer = layui.layer
            , laydate = layui.laydate;
        //日期
        // laydate.render({
        //     elem: '#insertTimeStart'
        // });
        // laydate.render({
        //     elem: '#insertTimeEnd'
        // });
        //TODO 数据校验
        //监听搜索框
        form.on('submit(searchSubmit)', function (data) {
            //重新加载table
            load2(data);
            return false;
        });
    });
});

//提交新增/编辑表单
function logFormSubmit(obj) {
    $.ajax({
        type: "POST",
        data: $("#devLogForm").serialize(),
        url: "/device/setDeviceLog",
        success: function (data) {
            if (data == "ok") {
                layer.alert("操作成功", function () {
                    layer.closeAll();
                    cleanDeviceLog();
                    //加载页面
                    load2(obj);
                    // window.location.reload();
                });
            } else {
                layer.alert(data, function () {
                    layer.closeAll();
                    //加载load方法
                    load2(obj);//自定义
                });
            }
            // }
        },
        error: function () {
            layer.alert("操作请求错误，请您稍后再试", function () {
                layer.closeAll();
                //加载load方法
                load2(obj);//自定义
            });
        }
    });
}

//新增设备发放记录
function addDeviceLog() {
    $.post("/user_wechat/getUsers", function (data) {
        if (data != null) {
            //显示所有护工
            $("#userWechatDiv").empty();
            $.each(data, function (index, item) {
                var user_wechatInput = $("<input type='checkbox' name='userId' value="
                    + item.id + " title=" + item.name + " lay-skin='primary'/>");
                var div = $("<div class='layui-unselect layui-form-checkbox' lay-skin='primary'>"
                    +
                    "<span>" + item.name
                    + "</span><i class='layui-icon'>&#xe626;</i>" +
                    "</div>");
                $("#userWechatDiv").append(user_wechatInput).append(div);
            })
            openDeviceLog(null, "新增设备分发记录");
            //重新渲染下form表单 否则复选框无效
            layui.form.render('checkbox');
        } else {
            //弹出错误提示
            layer.alert("获取护工数据有误，请您稍后再试", function () {
                layer.closeAll();
            });
        }
    });
}

function openDeviceLog(id, title) {
    console.log("id=" + id);
    if (id == null || id == "") {
        $("#logId").val("");
    }
    layer.open({
        type: 1,
        title: title,
        fixed: false,
        resize: false,
        shadeClose: true,
        area: ['550px'],
        content: $('#setDeviceLog'),
        end: function () {
            cleanDeviceLog();
        }
    });
}

function getDeviceAndUsers(obj, id) {
    console.log(id);
    //回显数据
    $.get("/device/getDeviceAndUsers", {"id": id}, function (data) {
        console.log(data);
        console.log(data.msg);
        if (data.msg == "ok" && data.deviceLog != null) {
            var existUser = '';
            existUser = data.deviceLog.userId + '';
            $("#logId").val(data.deviceLog.id == null ? '' : data.deviceLog.id);
            $("#deviceId").val(data.deviceLog.deviceId == null ? '' : data.deviceLog.deviceId);
            $("#deviceType_2").val(data.deviceLog.deviceType == null ? '' : data.deviceLog.deviceType);
            $("#deviceAtt").val(data.deviceLog.deviceAtt == null ? '' : data.deviceLog.deviceAtt);

            //显示护工信息数据
            $("#userWechatDiv").empty();
            $.each(data.users, function (index, item) {
                var user_wechatInput = $("<input type='checkbox' name='userId' value="
                    + item.id + " title=" + item.name
                    + " lay-skin='primary'/>");
                var div = $("<div class='layui-unselect layui-form-checkbox' lay-skin='primary'>"
                    +
                    "<span>" + item.name
                    + "</span><i class='layui-icon'>&#xe626;</i>" +
                    "</div>");
                if (existUser == item.id) {
                    user_wechatInput = $("<input type='checkbox' name='userId' value="
                        + item.id + " title=" + item.name
                        + " lay-skin='primary' checked='checked'/>");
                    div = $("<div class='layui-unselect layui-form-checkbox  layui-form-checked' lay-skin='primary'>"
                        +
                        "<span>" + item.name
                        + "</span><i class='layui-icon'>&#xe627;</i>" +
                        "</div>");
                }
                $("#userWechatDiv").append(user_wechatInput).append(div);
            });
            openDeviceLog(id, "编辑设备发放记录");
            //重新渲染下form表单中的复选框 否则复选框选中效果无效：在职|离职
            // layui.form.render();
            layui.form.render('checkbox');
        } else {
            //弹出错误提示
            layer.alert(data.msg, function () {
                layer.closeAll();
            });
        }
    });
}

function delDeviceLog(obj, id) {
    if (null != id) {

            layer.confirm('您确定要删除' , {
                btn: ['确认', '返回'] //按钮
            }, function () {
                $.post("/device/delDeviceLog", {"id": id},
                    function (data) {
                        if (data == "ok") {
                            //回调弹框
                            layer.alert("删除成功！", function () {
                                layer.closeAll();
                                //加载load方法
                                load2(obj);//自定义
                                // window.location.reload();

                            });
                        } else {
                            layer.alert(data, function () {
                                layer.closeAll();
                                //加载load方法
                                load2(obj);//自定义
                            });
                        }
                    });
            }, function () {
                layer.closeAll();
            });
    }
}

function load2(obj) {
    //重新加载table
    tableIns.reload({
        where: obj.field
        , page: {
            curr: pageCurr2 //从当前页码开始
        }
    });

}

function cleanDeviceLog() {
    //$("#id").val("");
    $("#deviceId").val("");
    $("#deviceType_2").val("");
    $("#deviceAtt").val("");
}

$(function () {
    $("#deviceLi").click(function () {
        $("#deviceLogLi").removeClass("layui-this");
        $("#deviceLogDiv").removeClass("layui-show");

        $("#deviceLi").addClass("layui-this");
        $("#deviceDiv").addClass("layui-show");
    });
    $("#deviceLogLi").click(function () {
        $("#deviceLi").removeClass("layui-this");
        $("#deviceDiv").removeClass("layui-show");

        $("#deviceLogLi").addClass("layui-this");
        $("#deviceLogDiv").addClass("layui-show");
    });
});
